查看原文
其他

Xilinx Bit文件格式详解

wcc149 电子电路开发学习 2023-06-07

▼点击下方名片,关注公众号▼

Xilinx FPGA支持多种程序文件格式,如.bit/.bin/.rbt/.isc,最常用的为.bit格式,一般用于调试时下载到FPGA片内RAM,掉电会丢失,量产时将.bit文件转换为.mcs格式文件,固化到外部Flash内。

比如在一些特定情况下,我们只有一个.bit文件,我们如何获取到以下信息呢?

  • Bit文件所对应的FPGA芯片信息,如型号,封装等

  • Bit文件所对应的FPGA工程的顶层设计名称

  • Bit文件所生成的时间,日期信息

  • 用户指定的ID号码(8位十六进制数)

相比于mcs文件,bit文件包括的信息更多,mcs文件只包含bit文件中的数据部分,上一篇文章介绍了MCS文件格式,本文简单介绍Xilinx bit文件的基本构成。

Xilinx Bit文件如何生成

Xilinx ISE开发环境,支持多种程序文件文件生成,.bit/.bin/.rbt/.isc,其中.bin格式文件不能下载到FPGA内部,也不能用来转换为mcs。

ISE生成文件类型,可以在生成下载文件选项中进行选择:

配置生成的程序文件

选择所需要的程序文件格式:

ISE支持生成的程序文件

还可以在Bit文件中指定用户代码,可以作为版本号或识别码。

指定用户代码

Xilinx Bit文件格式

bit文件是二进制编码的文件,不能使用文本工具打开,可以使用二进制编辑工具查看。

使用Binary Viewer打开一个bit文件:demo.bit

demo

我们好像发现了一些信息:

  • top.ncd,表示生成当前bit文件的顶层设计名称为:top

  • 6Slx9ftg256,bit文件所对应的FPGA型号:Spartan-6系列XC6SLX9,FTG256封装。

  • 2021/07/25 14:22:26,bit文件生成的时间:2021-07-25 14:22:26

  • 0x12345678,指定的用户ID

更简单的一种方式,我们可以使用file命令直接查看文件信息,file命令支持Xilinx系列Bit文件解析。

如果是Linux系统,我们可以直接使用file命令查看文件信息,Windows下,我们可以在GitCygwin64 Terminal等终端工具中使用file命令:

whik@WangChaoLaptop MINGW64 /d/MyFile
$ file ./demo.bit
demo.bit: Xilinx BIT data - from top.ncd;HW_TIMEOUT=FALSE;UserID=0x12345678 - for 6slx9ftg256 - built 2021/07/25(14:22:26) - data length 0x5327c

运行结果:

file命令执行结果

file命令开源地址:

https://github.com/file/file/blob/master/magic/Magdir/xilinx

file命令

master/magic/Magdir/xilinx文件简单介绍了Bit文件的格式。

参考资料

  • www.fpga-faq.com/FAQ_Pages/0026_Tell_me_about_bit_files.htm

  • www.pldtool.com/pdf/fmt_xilinxbit.pdf

  • www.xilinx.com/support/documentation/application_notes/xapp138.pdf

  • www.xilinx.com/support/documentation/application_notes/xapp139.pdf

  • www.xilinx.com/support/documentation/application_notes/xapp151.pdf

关注公众号【电子电路开发学习】,后台回复【bit文件】,获取以上文档打包下载链接。

Bit文件格式相关文档

更多

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存